﻿/*
 * XCoder v3.4.2011.0316
 * 作者：nnhy/X
 * 时间：2011-04-04 11:54:06
 * 版权：版权所有 (C) 新生命开发团队 2010
*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using XCode;
using XCode.DataAccessLayer;

namespace NXCMS.CMS
{
	/// <summary>
	/// 论坛成员
	/// </summary>
	[Serializable]
	[DataObject]
	[Description("论坛成员")]
	[BindTable("ForumMember", Description = "论坛成员", ConnName = "CMS", DbType = DatabaseType.SqlServer)]
	public partial class ForumMember
	{
		#region 属性
		private Int32 _ID;
		/// <summary>
		/// 编号
		/// </summary>
		[Description("编号")]
		[DataObjectField(true, true, false, 10)]
		[BindColumn(1, "ID", "编号", "", "int", 10, 0, false)]
		public Int32 ID
		{
			get { return _ID; }
			set { if (OnPropertyChange("ID", value)) _ID = value; }
		}

		private String _UserName;
		/// <summary>
		/// 用户名称
		/// </summary>
		[Description("用户名称")]
		[DataObjectField(false, false, false, 50)]
		[BindColumn(2, "UserName", "用户名称", "", "nvarchar(50)", 0, 0, true)]
		public String UserName
		{
			get { return _UserName; }
			set { if (OnPropertyChange("UserName", value)) _UserName = value; }
		}

		private Int32 _SiteID;
		/// <summary>
		/// 站点编号
		/// </summary>
		[Description("站点编号")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(3, "SiteID", "站点编号", "", "int", 10, 0, false)]
		public Int32 SiteID
		{
			get { return _SiteID; }
			set { if (OnPropertyChange("SiteID", value)) _SiteID = value; }
		}

		private Int32 _AdminID;
		/// <summary>
		/// 管理员编号
		/// </summary>
		[Description("管理员编号")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(4, "AdminID", "管理员编号", "", "int", 10, 0, false)]
		public Int32 AdminID
		{
			get { return _AdminID; }
			set { if (OnPropertyChange("AdminID", value)) _AdminID = value; }
		}

		private Int32 _UserGroupID;
		/// <summary>
		/// 用户组编号
		/// </summary>
		[Description("用户组编号")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(5, "UserGroupID", "用户组编号", "", "int", 10, 0, false)]
		public Int32 UserGroupID
		{
			get { return _UserGroupID; }
			set { if (OnPropertyChange("UserGroupID", value)) _UserGroupID = value; }
		}

		private Int32 _DefinedID;
		/// <summary>
		/// 定义内部编号
		/// </summary>
		[Description("定义内部编号")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(6, "DefinedID", "定义内部编号", "", "int", 10, 0, false)]
		public Int32 DefinedID
		{
			get { return _DefinedID; }
			set { if (OnPropertyChange("DefinedID", value)) _DefinedID = value; }
		}

		private String _NickName;
		/// <summary>
		/// 昵称
		/// </summary>
		[Description("昵称")]
		[DataObjectField(false, false, true, 100)]
		[BindColumn(7, "NickName", "昵称", "", "nvarchar(100)", 0, 0, true)]
		public String NickName
		{
			get { return _NickName; }
			set { if (OnPropertyChange("NickName", value)) _NickName = value; }
		}

		private Int32 _ThemeCount;
		/// <summary>
		/// 主题数量
		/// </summary>
		[Description("主题数量")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(8, "ThemeCount", "主题数量", "", "int", 10, 0, false)]
		public Int32 ThemeCount
		{
			get { return _ThemeCount; }
			set { if (OnPropertyChange("ThemeCount", value)) _ThemeCount = value; }
		}

		private Int32 _ReplyCount;
		/// <summary>
		/// 评论数量
		/// </summary>
		[Description("评论数量")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(9, "ReplyCount", "评论数量", "", "int", 10, 0, false)]
		public Int32 ReplyCount
		{
			get { return _ReplyCount; }
			set { if (OnPropertyChange("ReplyCount", value)) _ReplyCount = value; }
		}

		private String _HeadImage;
		/// <summary>
		/// 头部图片
		/// </summary>
		[Description("头部图片")]
		[DataObjectField(false, false, true, 500)]
		[BindColumn(10, "HeadImage", "头部图片", "", "nvarchar(500)", 0, 0, true)]
		public String HeadImage
		{
			get { return _HeadImage; }
			set { if (OnPropertyChange("HeadImage", value)) _HeadImage = value; }
		}

		private Boolean _UseSelfImage;
		/// <summary>
		/// 
		/// </summary>
		[Description("")]
		[DataObjectField(false, false, true, 1)]
		[BindColumn(11, "UseSelfImage", "", "", "bit", 0, 0, false)]
		public Boolean UseSelfImage
		{
			get { return _UseSelfImage; }
			set { if (OnPropertyChange("UseSelfImage", value)) _UseSelfImage = value; }
		}

		private Boolean _Status;
		/// <summary>
		/// 状态
		/// </summary>
		[Description("状态")]
		[DataObjectField(false, false, true, 1)]
		[BindColumn(12, "Status", "状态", "", "bit", 0, 0, false)]
		public Boolean Status
		{
			get { return _Status; }
			set { if (OnPropertyChange("Status", value)) _Status = value; }
		}

		private Int32 _ForumScore;
		/// <summary>
		/// 论坛分数
		/// </summary>
		[Description("论坛分数")]
		[DataObjectField(false, false, true, 10)]
		[BindColumn(13, "ForumScore", "论坛分数", "", "int", 10, 0, false)]
		public Int32 ForumScore
		{
			get { return _ForumScore; }
			set { if (OnPropertyChange("ForumScore", value)) _ForumScore = value; }
		}

		private String _ForumSign;
		/// <summary>
		/// 论坛签名
		/// </summary>
		[Description("论坛签名")]
		[DataObjectField(false, false, true, 1000)]
		[BindColumn(14, "ForumSign", "论坛签名", "", "nvarchar(1000)", 0, 0, true)]
		public String ForumSign
		{
			get { return _ForumSign; }
			set { if (OnPropertyChange("ForumSign", value)) _ForumSign = value; }
		}

		private DateTime _LastLoginTime;
		/// <summary>
		/// 最后登录时间
		/// </summary>
		[Description("最后登录时间")]
		[DataObjectField(false, false, true, 7)]
		[BindColumn(15, "LastLoginTime", "最后登录时间", "", "datetime2", 7, 0, false)]
		public DateTime LastLoginTime
		{
			get { return _LastLoginTime; }
			set { if (OnPropertyChange("LastLoginTime", value)) _LastLoginTime = value; }
		}

		private DateTime _LastLogoutTime;
		/// <summary>
		/// 最后注销时间
		/// </summary>
		[Description("最后注销时间")]
		[DataObjectField(false, false, true, 7)]
		[BindColumn(16, "LastLogoutTime", "最后注销时间", "", "datetime2", 7, 0, false)]
		public DateTime LastLogoutTime
		{
			get { return _LastLogoutTime; }
			set { if (OnPropertyChange("LastLogoutTime", value)) _LastLogoutTime = value; }
		}

		private String _prop1;
		/// <summary>
		/// 属性1
		/// </summary>
		[Description("属性1")]
		[DataObjectField(false, false, true, 50)]
		[BindColumn(17, "prop1", "属性1", "", "nvarchar(50)", 0, 0, true)]
		public String prop1
		{
			get { return _prop1; }
			set { if (OnPropertyChange("prop1", value)) _prop1 = value; }
		}

		private String _prop2;
		/// <summary>
		/// 属性2
		/// </summary>
		[Description("属性2")]
		[DataObjectField(false, false, true, 50)]
		[BindColumn(18, "prop2", "属性2", "", "nvarchar(50)", 0, 0, true)]
		public String prop2
		{
			get { return _prop2; }
			set { if (OnPropertyChange("prop2", value)) _prop2 = value; }
		}

		private String _prop3;
		/// <summary>
		/// 属性3
		/// </summary>
		[Description("属性3")]
		[DataObjectField(false, false, true, 50)]
		[BindColumn(19, "prop3", "属性3", "", "nvarchar(50)", 0, 0, true)]
		public String prop3
		{
			get { return _prop3; }
			set { if (OnPropertyChange("prop3", value)) _prop3 = value; }
		}

		private String _prop4;
		/// <summary>
		/// 属性4
		/// </summary>
		[Description("属性4")]
		[DataObjectField(false, false, true, 50)]
		[BindColumn(20, "prop4", "属性4", "", "nvarchar(50)", 0, 0, true)]
		public String prop4
		{
			get { return _prop4; }
			set { if (OnPropertyChange("prop4", value)) _prop4 = value; }
		}

		private String _AddUser;
		/// <summary>
		/// 添加用户
		/// </summary>
		[Description("添加用户")]
		[DataObjectField(false, false, false, 100)]
		[BindColumn(21, "AddUser", "添加用户", "", "nvarchar(100)", 0, 0, true)]
		public String AddUser
		{
			get { return _AddUser; }
			set { if (OnPropertyChange("AddUser", value)) _AddUser = value; }
		}

		private DateTime _AddTime;
		/// <summary>
		/// 添加时间
		/// </summary>
		[Description("添加时间")]
		[DataObjectField(false, false, false, 7)]
		[BindColumn(22, "AddTime", "添加时间", "", "datetime2", 7, 0, false)]
		public DateTime AddTime
		{
			get { return _AddTime; }
			set { if (OnPropertyChange("AddTime", value)) _AddTime = value; }
		}

		private String _ModifyUser;
		/// <summary>
		/// 修改用户
		/// </summary>
		[Description("修改用户")]
		[DataObjectField(false, false, true, 100)]
		[BindColumn(23, "ModifyUser", "修改用户", "", "nvarchar(100)", 0, 0, true)]
		public String ModifyUser
		{
			get { return _ModifyUser; }
			set { if (OnPropertyChange("ModifyUser", value)) _ModifyUser = value; }
		}

		private DateTime _ModifyTime;
		/// <summary>
		/// 修改时间
		/// </summary>
		[Description("修改时间")]
		[DataObjectField(false, false, true, 7)]
		[BindColumn(24, "ModifyTime", "修改时间", "", "datetime2", 7, 0, false)]
		public DateTime ModifyTime
		{
			get { return _ModifyTime; }
			set { if (OnPropertyChange("ModifyTime", value)) _ModifyTime = value; }
		}

		private String _BackupNo;
		/// <summary>
		/// 备份编号
		/// </summary>
		[Description("备份编号")]
		[DataObjectField(false, false, true, 15)]
		[BindColumn(25, "BackupNo", "备份编号", "", "nvarchar(15)", 0, 0, true)]
		public String BackupNo
		{
			get { return _BackupNo; }
			set { if (OnPropertyChange("BackupNo", value)) _BackupNo = value; }
		}

		private String _BackupOperator;
		/// <summary>
		/// 备份操作者
		/// </summary>
		[Description("备份操作者")]
		[DataObjectField(false, false, true, 200)]
		[BindColumn(26, "BackupOperator", "备份操作者", "", "nvarchar(200)", 0, 0, true)]
		public String BackupOperator
		{
			get { return _BackupOperator; }
			set { if (OnPropertyChange("BackupOperator", value)) _BackupOperator = value; }
		}

		private DateTime _BackupTime;
		/// <summary>
		/// 备份时间
		/// </summary>
		[Description("备份时间")]
		[DataObjectField(false, false, true, 7)]
		[BindColumn(27, "BackupTime", "备份时间", "", "datetime2", 7, 0, false)]
		public DateTime BackupTime
		{
			get { return _BackupTime; }
			set { if (OnPropertyChange("BackupTime", value)) _BackupTime = value; }
		}

		private String _BackupMemo;
		/// <summary>
		/// 备份注释
		/// </summary>
		[Description("备份注释")]
		[DataObjectField(false, false, true, 50)]
		[BindColumn(28, "BackupMemo", "备份注释", "", "nvarchar(50)", 0, 0, true)]
		public String BackupMemo
		{
			get { return _BackupMemo; }
			set { if (OnPropertyChange("BackupMemo", value)) _BackupMemo = value; }
		}
		#endregion

		#region 获取/设置 字段值
		/// <summary>
		/// 获取/设置 字段值。
		/// 一个索引，基类使用反射实现。
		/// 派生实体类可重写该索引，以避免反射带来的性能损耗
		/// </summary>
		/// <param name="name">字段名</param>
		/// <returns></returns>
		public override Object this[String name]
		{
			get
			{
				switch (name)
				{
					case "ID" : return _ID;
					case "UserName" : return _UserName;
					case "SiteID" : return _SiteID;
					case "AdminID" : return _AdminID;
					case "UserGroupID" : return _UserGroupID;
					case "DefinedID" : return _DefinedID;
					case "NickName" : return _NickName;
					case "ThemeCount" : return _ThemeCount;
					case "ReplyCount" : return _ReplyCount;
					case "HeadImage" : return _HeadImage;
					case "UseSelfImage" : return _UseSelfImage;
					case "Status" : return _Status;
					case "ForumScore" : return _ForumScore;
					case "ForumSign" : return _ForumSign;
					case "LastLoginTime" : return _LastLoginTime;
					case "LastLogoutTime" : return _LastLogoutTime;
					case "prop1" : return _prop1;
					case "prop2" : return _prop2;
					case "prop3" : return _prop3;
					case "prop4" : return _prop4;
					case "AddUser" : return _AddUser;
					case "AddTime" : return _AddTime;
					case "ModifyUser" : return _ModifyUser;
					case "ModifyTime" : return _ModifyTime;
					case "BackupNo" : return _BackupNo;
					case "BackupOperator" : return _BackupOperator;
					case "BackupTime" : return _BackupTime;
					case "BackupMemo" : return _BackupMemo;
					default: return base[name];
				}
			}
			set
			{
				switch (name)
				{
					case "ID" : _ID = Convert.ToInt32(value); break;
					case "UserName" : _UserName = Convert.ToString(value); break;
					case "SiteID" : _SiteID = Convert.ToInt32(value); break;
					case "AdminID" : _AdminID = Convert.ToInt32(value); break;
					case "UserGroupID" : _UserGroupID = Convert.ToInt32(value); break;
					case "DefinedID" : _DefinedID = Convert.ToInt32(value); break;
					case "NickName" : _NickName = Convert.ToString(value); break;
					case "ThemeCount" : _ThemeCount = Convert.ToInt32(value); break;
					case "ReplyCount" : _ReplyCount = Convert.ToInt32(value); break;
					case "HeadImage" : _HeadImage = Convert.ToString(value); break;
					case "UseSelfImage" : _UseSelfImage = Convert.ToBoolean(value); break;
					case "Status" : _Status = Convert.ToBoolean(value); break;
					case "ForumScore" : _ForumScore = Convert.ToInt32(value); break;
					case "ForumSign" : _ForumSign = Convert.ToString(value); break;
					case "LastLoginTime" : _LastLoginTime = Convert.ToDateTime(value); break;
					case "LastLogoutTime" : _LastLogoutTime = Convert.ToDateTime(value); break;
					case "prop1" : _prop1 = Convert.ToString(value); break;
					case "prop2" : _prop2 = Convert.ToString(value); break;
					case "prop3" : _prop3 = Convert.ToString(value); break;
					case "prop4" : _prop4 = Convert.ToString(value); break;
					case "AddUser" : _AddUser = Convert.ToString(value); break;
					case "AddTime" : _AddTime = Convert.ToDateTime(value); break;
					case "ModifyUser" : _ModifyUser = Convert.ToString(value); break;
					case "ModifyTime" : _ModifyTime = Convert.ToDateTime(value); break;
					case "BackupNo" : _BackupNo = Convert.ToString(value); break;
					case "BackupOperator" : _BackupOperator = Convert.ToString(value); break;
					case "BackupTime" : _BackupTime = Convert.ToDateTime(value); break;
					case "BackupMemo" : _BackupMemo = Convert.ToString(value); break;
					default: base[name] = value; break;
				}
			}
		}
		#endregion

		#region 字段名
		/// <summary>
		/// 取得论坛成员字段名的快捷方式
		/// </summary>
		public class _
		{
			///<summary>
			/// 编号
			///</summary>
			public const String ID = "ID";

			///<summary>
			/// 用户名称
			///</summary>
			public const String UserName = "UserName";

			///<summary>
			/// 站点编号
			///</summary>
			public const String SiteID = "SiteID";

			///<summary>
			/// 管理员编号
			///</summary>
			public const String AdminID = "AdminID";

			///<summary>
			/// 用户组编号
			///</summary>
			public const String UserGroupID = "UserGroupID";

			///<summary>
			/// 定义内部编号
			///</summary>
			public const String DefinedID = "DefinedID";

			///<summary>
			/// 昵称
			///</summary>
			public const String NickName = "NickName";

			///<summary>
			/// 主题数量
			///</summary>
			public const String ThemeCount = "ThemeCount";

			///<summary>
			/// 评论数量
			///</summary>
			public const String ReplyCount = "ReplyCount";

			///<summary>
			/// 头部图片
			///</summary>
			public const String HeadImage = "HeadImage";

			///<summary>
			/// 
			///</summary>
			public const String UseSelfImage = "UseSelfImage";

			///<summary>
			/// 状态
			///</summary>
			public const String Status = "Status";

			///<summary>
			/// 论坛分数
			///</summary>
			public const String ForumScore = "ForumScore";

			///<summary>
			/// 论坛签名
			///</summary>
			public const String ForumSign = "ForumSign";

			///<summary>
			/// 最后登录时间
			///</summary>
			public const String LastLoginTime = "LastLoginTime";

			///<summary>
			/// 最后注销时间
			///</summary>
			public const String LastLogoutTime = "LastLogoutTime";

			///<summary>
			/// 属性1
			///</summary>
			public const String prop1 = "prop1";

			///<summary>
			/// 属性2
			///</summary>
			public const String prop2 = "prop2";

			///<summary>
			/// 属性3
			///</summary>
			public const String prop3 = "prop3";

			///<summary>
			/// 属性4
			///</summary>
			public const String prop4 = "prop4";

			///<summary>
			/// 添加用户
			///</summary>
			public const String AddUser = "AddUser";

			///<summary>
			/// 添加时间
			///</summary>
			public const String AddTime = "AddTime";

			///<summary>
			/// 修改用户
			///</summary>
			public const String ModifyUser = "ModifyUser";

			///<summary>
			/// 修改时间
			///</summary>
			public const String ModifyTime = "ModifyTime";

			///<summary>
			/// 备份编号
			///</summary>
			public const String BackupNo = "BackupNo";

			///<summary>
			/// 备份操作者
			///</summary>
			public const String BackupOperator = "BackupOperator";

			///<summary>
			/// 备份时间
			///</summary>
			public const String BackupTime = "BackupTime";

			///<summary>
			/// 备份注释
			///</summary>
			public const String BackupMemo = "BackupMemo";
		}
		#endregion
	}
}